package com.im.service.friendship.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.im.service.friendship.entity.ImFriendShipGroupMemberEntity;
import com.im.service.friendship.model.req.AddFriendShipGroupMemberReq;
import com.im.service.friendship.model.req.DeleteFriendShipGroupMemberReq;

import java.util.List;

/**
 * ImFriendShipGroupMemberService 接口，用于操作好友分组和好友分组成员
 */
public interface ImFriendShipGroupMemberService extends IService<ImFriendShipGroupMemberEntity> {

    /**
     * 添加好友分组成员
     * @param req 添加好友分组成员请求参数
     * @return 返回添加成功的好友分组成员 id 列表
     */
    List<String> addGroupMember(AddFriendShipGroupMemberReq req);

    /**
     * 删除好友分组成员
     * @param req 删除好友分组成员请求参数
     * @return 返回删除成功的好友分组成员 id 列表
     */
    List<String> delGroupMember(DeleteFriendShipGroupMemberReq req);

    /**
     * 向好友分组中添加好友
     * @param groupId 好友分组 id
     * @param toId 好友 id
     * @return 返回添加好友的数量
     */
    int doAddGroupMember(Long groupId, String toId);

    /**
     * 清空好友分组中的好友
     * @param groupId 好友分组 id
     * @return 返回清空好友的数量
     */
    int clearGroupMember(Long groupId);
}
